今天開始進入我覺得比較困難的部分了,也就是物件導向中重要的觀念之一:類別,首先我會先從認識java中類別的基本概念開始,這樣也會比較好理解。
矩形是常見的一個幾何圖形,而他具有長(width)與寬(length)兩種屬性,有了這兩種屬性我們便可以求出他的面積(area)與周長(perimeter),因此在java中我們可以創建「矩形」這個類別使得他能儲存長與寬的數據,並能夠計算出他的周長與面積。
然後我們可以定義一個「Rectangle」類別,「資料成員」與「函數成員」構成「類別」,長與寬便是Rectangle 的資料成員,而矩形面積公式:長x寬就是Rectangle的函數成員之一。
有了上述的基本概念後,我們就可以開始創建Rectangle類別中的物件。
首先,要以類別名稱來宣告你的物件變數,例如:我要創圓形(Circle)類別的c1物件變數,第一步就是以類別名稱宣告變數。
(1)Circle c1;
再來,就是以new建立Circle物件,並讓c1指向他,這樣c1才能存取到建立的物件。
(2)c1 = new Circle();
以上可以化簡為一行:
Circle c1 = new Circle();
剛舉例的c1並不是物件實體,他指示指向物件實體的位址,其實可以將他視為物件的名稱,我們可以透過一語法「物件名稱.資料成員名稱」來設定資料成員的值
例如:c1.radius = 10
舉個例子,我們還可以在設定c2的半徑值(radius)回傳值給已設定的函數(setRadius)
void setRadius(double r){ //setRadius函數
radius=r;
}
.
.
c2.setRadius(4.0) //回傳4.0半徑值給函數setRadius
這樣我們知道了可以回傳值給函數,也可以不回傳(此時便可以省略return)
今天的類別就學到這裡,明天開始會學習繼承與重載等更多進階觀念。